export namespace User {
  export interface UserRole {
    id: number
    roleName: string
    roleCode: string
    corpId: number
    storeId: number
    mainRole: boolean
    // 以下为你补充的 roles 内部字段
    schemeId: number
    schemeName: null
    sex: number
    shopownerStatus: number
    state: number
    status: number
    storeName: null
    topStaffId: number
    topStaffName: null
    trueName: null
    updatePswTime: string
    updateTime: string
    userName: string
    userType: number
  }
  export interface UserInfo {
    avatar: string
    birthday?: string // 格式："YYYY-MM-DD HH:MM:SS"
    canAppointment?: boolean
    corpId?: number
    createTime?: string // 格式："YYYY-MM-DD HH:MM:SS"
    defaultPassWord?: null
    deleted?: boolean
    email?: null
    emailVerified?: boolean
    id: number
    idCard?: null
    introduction: string
    loginRoleCategoryId: number
    managerId?: number
    managerName?: null
    marriage?: number
    modifyTime?: null
    nickName: string
    organizationId?: null
    organizationName?: null
    parentId?: number
    parentName?: null
    passWord?: string // 加密后的密码字符串
    phone: string // 手机号字符串
    registerFlag?: number
    roleIds?: string // 角色ID集合（空字符串表示无）
    roles?: UserRole[] // 角色列表，嵌套 UserRole 类型
    schemeId?: number
    schemeName?: null
    sex: number // 1-男性（根据业务隐含逻辑推断，需结合实际场景确认）
    shopownerStatus?: number
    state?: number
    status?: number
    storeId?: number
    storeName?: null
    topStaffId?: number
    topStaffName?: null
    trueName: string
    updatePswTime?: string // 格式："YYYY-MM-DD HH:MM:SS"
    updateTime?: string // 格式："YYYY-MM-DD HH:MM:SS"
    userName?: string // 用户名（如"1005"）
    userType?: number
  }
  export interface ChangePriceForm {
    userId: any
    oldPsw: string
    newPsw: string
    samePsw?: string
  }
  export interface RoleFront {
    id?: number
    name: string
    maxDiscount: string
    maxReduceAmount: string
    roleMenuIds: number[]
    remark: string
  }
  export interface RoleBack {
    // 图片中必选字段
    roleName: string // 角色名称
    roleCode: string // 角色标识
    comments: string // 备注
    categoryId: number

    // 其余可选字段（`null` 类型标注为 `any`）
    corpId?: number
    createTime?: string
    deleted?: boolean
    id?: number
    mainRole?: boolean
    modifyTime?: number | any
    rolePos?: string
    storeId?: number
    updateTime?: any
  }
  export interface UserManger {
    // 图片中明确的必选字段
    userName: string // 账号
    userType: number // 账号类型
    nickName: string // 昵称
    sex: number // 性别（如 1 对应男）
    phone: string // 手机号
    defaultPassWord: string // 初始密码
    roleIds?: string // 角色（字符串形式的数组，如 "[506901346435142]"）
    roles: number[] // 角色数组（存储角色ID）
    // 其余可选字段（`null` 类型标注为 `any`）
    avatar?: any
    birthday?: any
    canAppointment?: boolean
    corpId?: number
    createTime?: string
    deleted?: boolean
    email?: any
    emailVerified?: boolean
    id?: number
    idCard?: any
    introduction?: any
    loginRoleCategoryId?: number
    managerId?: number
    managerName?: any
    marriage?: number
    modifyTime?: any
    organizationId?: any
    organizationName?: any
    parentId?: number
    parentName?: any
    passWord?: any
    registerFlag?: number
    schemeId?: number
    schemeName?: any
    shopownerStatus?: number
    state?: number
    status?: number
    storeId?: number
    storeName?: any
    topStaffId?: number
    topStaffName?: any
    trueName?: any
    updatePswTime?: any
    updateTime?: any
    posRoleId?: number
  }
  export interface RoleAuthority {
    id: number
    isAddFoodInfo: boolean
    isAddUserInfo: boolean
    isAllDiscount: boolean
    isClassOff: boolean
    isClearData: boolean
    isFoodDiscount: boolean
    isFoodGift: boolean
    isFoodRefund: boolean
    isPrintRepair: boolean
    isSettlementUn: boolean
    isSysSetup: boolean
    isUserDeposit: boolean
    isUserDepositRefund: boolean
    maxDiscountValue: number
    maxReduceAmount: number
  }
  export interface DictList {
    check: boolean
    id: number
    name: string
    pageId: number
    pageTitle: string
    title: string
  }
  export interface LoadMenuPageDict {
    check: boolean
    childrens: LoadMenuPageDict[]
    component: string
    dictList: DictList[]
    id: number
    name: string
    page: any
    parentId: number
    path: string
    redirect: string
    sort: number
    title: string
  }

  export interface ResUserList {
    id: string | number
    userName: string
    phone: string
    nickName: string
    userType: number
    avatar: string
    sex: number
    email: string
    trueName: string
    birthday: string
    introduction: string
    state: number
  }
}
